package design.pattern.singleton.demo3;

/**
 * 懒汉式，使用时创建实例
 * @author AtoVio, Winter Yuan
 */
public class Singleton {

    // 私有构造方法
    private Singleton() {}

    private static Singleton instance;

    public static synchronized Singleton getInstance() { // 为了保证线程安全，需要加关键字
        // 为了让每次返回的对象是同一个实例，我们需要判断
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}
